package com.guchenbo.spark.core

/**
 * @author guchenbo
 * @date 2022/3/5
 */
object RddFlatMap {
  def main(args: Array[String]): Unit = {
    val sc = SparkUtils.sc("map")
    val rdd = sc.makeRDD(List(1, 2, 3, List(4)), 2)
    //    rdd.map(i => i + "").collect().foreach(println)
    rdd.flatMap {
      case list@(li: List[_]) =>
        println("is list", list)
        li
      case list =>
        println("not list", list)
        List(list)
    }.collect().foreach(println)
    //    rdd.flatMap(List(String.valueOf(_))).collect().foreach(println)
    //    val r2 = sc.makeRDD(List(List(1, 2), List(3, 4)))
    //    r2.flatMap(list => {
    //      list
    //    }).collect().foreach(println)
  }
}
